iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 17
1
自我挑戰組

SDN/NFV 網路虛擬化調度平台系列 第 17

Day17 - Mininet介紹與實做 I

  • 分享至 

  • xImage
  •  

Mininet

Mininet是一個網路模擬編排系統。可以自定義簡單的程式碼,讓它運行在單個Linux核心上且僅使用了輕量級的虛擬化即可讓單一系統像是擁有完整的網路環境。Mininet上所創建的虛擬主機、交換機等網路設備是使用軟體去實做開發的,且在大多數情況下,它們的行為就類似於真實的硬體設備,所以在Mininet上所部屬的網絡拓樸,往往可以直接轉換於現實場景的網路環境,更能模擬在真實平台上所運行的程式碼與應用程式。

為什麼使用

  • 快速:建立網路拓樸只需要幾秒鐘
  • 簡單:定義簡單的Python腳本
  • 輕量級:使用資源低
  • 運行真實的應用程式:能執行任何在Linux上的所有應用程式
  • 自定義數據的轉發:交換器有支援OpenFlow Protocol,作為練習軟體定義網路的場域,十分友善

極限所在

  • 資源共享:創建的虛擬主機所使用的資源是共享的
  • 只支援Linux:無法使用Windows等其他作業系統
  • PID NameSpace共享:與主機的行程是共享的,在殺死虛擬主機的服務時,要特別注意

Mininet實做

安裝

on Ubuntu

apt install mininet -y

Cli

使用 mn 建立簡易的網路拓圖 --topo 可定義網路拓樸的種類與數量

mn --topo=single,2
mn --topo=linear,2
mn --topo=reversed,2
mn --topo=tree,2

下圖為linear類型的結果視圖
https://ithelp.ithome.com.tw/upload/images/20191002/201210704WeHbybO2q.png
下圖為tree類型的結果視圖
https://ithelp.ithome.com.tw/upload/images/20191002/201210708zfCLdBBGs.png
顯示擁有的元件
https://ithelp.ithome.com.tw/upload/images/20191002/20121070sOxttSRK5o.png
顯示詳細的元件資訊
https://ithelp.ithome.com.tw/upload/images/20191003/201210709gxBFyBJ1f.png
顯示網路連接關係
https://ithelp.ithome.com.tw/upload/images/20191003/20121070o1olRvM4wv.png
查看線路連接情況
https://ithelp.ithome.com.tw/upload/images/20191003/20121070eXSBCZdL76.png
顯示主機1的命令視窗
https://ithelp.ithome.com.tw/upload/images/20191003/20121070EzNspgtGJ9.png

Iperf

h1當客戶端、h2當服務端,開啟埠號(自定義) -i 每隔幾秒顯示 -t 測試時間長度

xterm h1 , xterm h2
h2>iperf -s -p 22222 -i 1
h1>iperf -c 10.0.0.2 -p 22222 -t 15

https://ithelp.ithome.com.tw/upload/images/20191003/20121070lkatzQ8T4j.png

gnuplot

修改h2命令,將結果存在result檔案

h2>iperf -s -p 22222 -i 1 > result

修改資料格式,存成新檔案 net_result

cat result | grep sec | head -15 | tr - " " | awk {'print $4,$8}' > net_result

使用gnuplot元件匯出圖示方便查看
https://ithelp.ithome.com.tw/upload/images/20191003/20121070zZokMc4Fqe.png

wireshark

在h2的虛擬主機中,以背景模式啟用wireshark,再使用h1 ping h2查看結果

h2 wireshark &
h1 ping h2

https://ithelp.ithome.com.tw/upload/images/20191003/20121070Anz3c4L5BB.png

Reference

https://github.com/mininet/mininet


上一篇
Day16 - 軟體定義網路介紹
下一篇
Day18 - Mininet介紹與實做 II
系列文
SDN/NFV 網路虛擬化調度平台30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言